IT systems on the Internet mutually connect systems made up of server devices, storage devices and client terminals, to perform data communication using protocols of diverse types. Typical protocols include the Ethernet, fiber channels and InfiniBand, etc. In this type of data communication, each device for performing communication contains an IO adapter for a dedicated protocol, and their IO adapter input/output ports are mutually connected to backplanes and cables. Moreover, dedicated protocol IO switches are connected via multiple stages when connecting to a large number of devices. During data transfer by application programs operating on these devices, an application program interface for the dedicated protocol IO drivers is generally utilized in operation systems running on these devices. When using an Ethernet protocol for example, the server device contains a network interface card (NIC) as the IO adapter, an Ethernet switch as the IO switch, and a twisted-pair cable as the mutual connecting cable. The application program can also perform data communication from an NIC driver running on the operation system. The IO adapters utilized for communicating between these types of devices typically using the DMA (Direct Memory Access) transfer method for improving communication performance. The DMA transfer method carries out data transfer by directly accessing the main storage memory without utilizing the CPU (Central Processing Unit). The DMA transfer method can transfer data without utilizing the CPU and therefore along with high-speed data transfer offers the advantage that there is no data processing load on the CPU.
Bandwidth control technology for conventional DMA transfer utilizes a method that renders a DMA engine effective just for the time needed to satisfy the bandwidth setting on a timer counter in the IO adapter unit. This type of data transfer device is described in JP-A No. 2002-183078.
In recent years, IO interface communication is mainly used for serial transmission between devices and advances are being made in increasing the transmission bandwidth capacity per the physical wiring layer. On the other hand, processing performance has improved in devices containing processors such as server devices because the processor chips now contain multiple cores. This increased performance has resulted in more methods that run (operate) multiple application programs on a single processor chip. Though the processing performance per a single processor chip and the bandwidth transfer capacity of the physical wiring layer has in this way improved, the number of I/O physical wires (wiring) per one processor has not increased. Therefore, one physical wire must logically be subdivided for sharing by multiple application programs. Technology for logically subdividing one physical wire is available as a capsule interface technology that forms an optional protocol of the base interface into a capsule and transfers it. Typical interfaces of this type are the InfiniBand and PCI Express Advance Switching Interconnect. By assigning these capsule interfaces to individual application programs, one physical wire can be jointly shared by multiple application programs.